package com.niuxiaofa.newlaw.Tools;

import android.app.Activity;
import android.content.Context;
import android.net.Uri;

import android.os.Build;
import android.util.Log;
import android.widget.ImageView;

import com.bumptech.glide.Glide;
import com.bumptech.glide.load.engine.DiskCacheStrategy;
import com.bumptech.glide.load.resource.bitmap.CenterCrop;
import com.bumptech.glide.load.resource.bitmap.CircleCrop;
import com.bumptech.glide.load.resource.bitmap.RoundedCorners;
import com.bumptech.glide.request.RequestOptions;
import com.niuxiaofa.newlaw.R;

import java.io.File;


public class GlideUtils {

    public static void loadRoundedImage(Context mContext, String imgUrl, ImageView imageView) {
        int erroimg = R.mipmap.default_img_failed;
        RoundedCorners roundedCorners = new RoundedCorners(15);    //设置图片圆角角度

        final RequestOptions options = new RequestOptions()
                .bitmapTransform(roundedCorners)
                .transform(new CenterCrop(), roundedCorners)
                //  .placeholder(R.mipmap.load)// 正在加载中的图片
                .error(R.mipmap.default_img_failed); // 加

        Glide.with(mContext)
                .load(imgUrl)// 图片地址
                .apply(options)
                .thumbnail(Glide.with(mContext).load(R.mipmap.lode))
                .into(imageView);

    }

    public static void loadRoundedImage(Context mContext, int  imgUrl, ImageView imageView) {
        int erroimg = R.mipmap.default_img_failed;
        RoundedCorners roundedCorners = new RoundedCorners(15);    //设置图片圆角角度

        final RequestOptions options = new RequestOptions()
                .bitmapTransform(roundedCorners)
                .transform(new CenterCrop(), roundedCorners)
                //  .placeholder(R.mipmap.load)// 正在加载中的图片
                .error(R.mipmap.default_img_failed); // 加

        Glide.with(mContext)
                .load(imgUrl)// 图片地址
                .apply(options)
                .thumbnail(Glide.with(mContext).load(R.mipmap.lode))
                .into(imageView);

    }


    public static void loadImage(Context mContext, String imgUrl, ImageView imageView) {

        Glide.with(mContext)
                .load(imgUrl)// 图片地址
                .thumbnail(Glide.with(mContext).load(R.mipmap.lode))
                .into(imageView);
    }

    public static void LoadGif(Context mContext, int imgUrl, ImageView imageView){
        Glide.with(mContext).asGif().load(imgUrl).into(imageView);
    }

    public static void loadChatImage(Context mContext, String imgUrl, ImageView imageView) {
        int erroimg = R.mipmap.default_img_failed;
        RoundedCorners roundedCorners = new RoundedCorners(15);    //设置图片圆角角度

        final RequestOptions options = new RequestOptions()
                .bitmapTransform(roundedCorners)
                .transform(roundedCorners)
                .placeholder(R.mipmap.lode)// 正在加载中的图片
                .error(R.mipmap.default_img_failed); // 加

        Glide.with(mContext)
                .load(imgUrl)// 图片地址
                .apply(options)
                .thumbnail(Glide.with(mContext).load(R.mipmap.lode))
                .into(imageView);

    }


    public static void loadNoRoundedImage(Context mContext, String imgUrl, ImageView imageView) {
        int erroimg = R.mipmap.default_img_failed;
        //设置图片圆角角度
        final RequestOptions options = new RequestOptions()
                //  .placeholder(R.mipmap.load)// 正在加载中的图片
                .error(R.mipmap.default_img_failed); // 加载失败的图片

        Glide.with(mContext)
                .load(imgUrl)// 图片地址
                .apply(options)
                .centerCrop()
                .into(imageView);

    }


    public static void loadNoRoundedImage3(Context mContext, String imgUrl, ImageView imageView) {
        int erroimg = R.mipmap.default_img_failed;
        //设置图片圆角角度
        final RequestOptions options = new RequestOptions()
                //  .placeholder(R.mipmap.load)// 正在加载中的图片
                .error(R.mipmap.default_img_failed); // 加载失败的图片

        Glide.with(mContext)
                .load(imgUrl)// 图片地址
                .apply(options)

                .into(imageView);

    }

    public static void loadUserImg(final Context mContext, String imgUrl, final ImageView imageView) {
        int erroimg = R.mipmap.default_img_failed;
        RoundedCorners roundedCorners = new RoundedCorners(10);    //设置图片圆角角度

        final RequestOptions options = new RequestOptions()
                .bitmapTransform(roundedCorners)
                //  .placeholder(R.mipmap.load)// 正在加载中的图片
                .error(R.mipmap.default_img_failed); // 加载失败的图片


            Glide.with(mContext)
                    .load(imgUrl)// 图片地址
                    .apply(RequestOptions.bitmapTransform(new CircleCrop()))
                    .into(imageView);

    }

    public static void loadNoRoundedImage2(Context mContext, String imgUrl, ImageView imageView) {
        int erroimg = R.mipmap.default_img_failed;
        //设置图片圆角角度
        final RequestOptions options = new RequestOptions()
                //  .placeholder(R.mipmap.load)// 正在加载中的图片
                .error(R.mipmap.default_img_failed); // 加载失败的图片

        Glide.with(mContext)
                .load(imgUrl)// 图片地址
                .apply(options)

                .override(500,800)
                .into(imageView);

    }

    public static void infomationImage(Context mContext, String imgUrl, ImageView imageView) {
        int erroimg = R.mipmap.default_img_failed;
        //设置图片圆角角度
        final RequestOptions options = new RequestOptions()
                //  .placeholder(R.mipmap.load)// 正在加载中的图片
                .error(R.mipmap.default_img_failed); // 加载失败的图片

        Glide.with(mContext)
                .load(imgUrl)// 图片地址
                .apply(options)
                .into(imageView);

    }


    public static void loadVerificationImage(final Context mContext, String imgUrl, final ImageView imageView) {

        final RequestOptions options = new RequestOptions()
                .diskCacheStrategy(DiskCacheStrategy.NONE)
                .skipMemoryCache(true)
                //  .placeholder(R.mipmap.load)// 正在加载中的图片
                .error(R.mipmap.default_img_failed); // 加载失败的图片

        Glide.with(mContext)
                .load(imgUrl)// 图片地址
                .apply(options)
                .into(imageView);

    }





    public static void loadSDCardImg(final Context mContext, File file, final ImageView imageView) {
        Log.e("File", file.getPath());
        RoundedCorners roundedCorners = new RoundedCorners(10);
        final RequestOptions options = new RequestOptions()
                .bitmapTransform(roundedCorners)
                //  .placeholder(R.mipmap.load)// 正在加载中的图片
                .error(R.mipmap.default_img_failed); // 加载失败的图片

        Glide.with(mContext)
                .load(Uri.fromFile(file))// 图片地址
                .apply(options)
                .centerCrop()
                .into(imageView);

    }


    public static void loadInfomationImg(final Context mContext, String imgUrl, final ImageView imageView) {
        int erroimg = R.mipmap.default_img_failed;
        RoundedCorners roundedCorners = new RoundedCorners(10);    //设置图片圆角角度

        final RequestOptions options = new RequestOptions()
                .bitmapTransform(roundedCorners)
                .skipMemoryCache(false)  //用内存缓存
                //  .placeholder(R.mipmap.load)// 正在加载中的图片
                .diskCacheStrategy(DiskCacheStrategy.ALL)//缓存所有图片(原图,转换图)
                .error(erroimg); // 加载失败的图片


        Glide.with(mContext)
                .load(imgUrl)// 图片地址
                .apply(options)
                .thumbnail(Glide.with(mContext).load(R.mipmap.lode))
                .into(imageView);


    }



}
